DIM gef(200),aa(20),bb(20),cc(20),dd(20),ee(20),ff(20),gg(20),hh(20),ii(20),jj(20),kk(20),ll(20),mm(20),NN(20),oo(20),pp(20),qq(20),rr(20),ss(20),tt(20),uu(20),vv(20),ww(20),xxx(20),yyy(20),zzz(20)
MENU 5,0,0,"Druck"
MENU 5,1,1,"Schreibm."
MENU 5,2,1,"Briefkopf"
PALETTE 0,0.1,0.3,0.3
PALETTE 2,0,0,0
COLOR 2,0
LOCATE 2,2 : PRINT A$ ;
LOCATE 2,71 : PRINT A$ ;
LOCATE 24,2 : PRINT A$ ;
LOCATE 24,71 : PRINT A$ ;
COLOR 1,0
r=-1
COLOR 9,0
LOCATE 7,36 : PRINT "A V S B D P"
COLOR 10,0
LOCATE 13,35 : PRINT "copyright by";
COLOR 2,0
LOCATE 16,30 : PRINT "Baby-Soft Bielefeld" ;
FOR z=1 TO 50
SCROLL (1,120)-(600,130),1,0
NEXT z
BEEP
mausabf:
IF x<100 THEN SCROLL (1,120)-(600,130),r,0
IF x=100 THEN r=1 : BEEP
IF x=200 THEN r=-1 : x=0 : BEEP
IF x>100 THEN SCROLL (1,120)-(600,130),r,0
x=x+1
ON MOUSE GOSUB rollen
MOUSE ON
GOTO mausabf
rollen: COLOR 1,10
FOR x=1 TO 105
SCROLL (0,0)-(640,100),0,-1
SCROLL (640,100)-(0,640),0,1
NEXT x
bild:
MENU 5,0,1
COLOR 2,10
LOCATE 4,7 : PRINT "Name :";
LOCATE 6,7 : PRINT "Vorname :";
LOCATE 8,7 : PRINT "Strasse :";
LOCATE 10,7 : PRINT "Wohnort :";
LOCATE 12,7 : PRINT "Telefon :";
LOCATE 15,7 : PRINT "Info :";
bild1:
LINE (1,192)-(9,202),2,bf
LINE (1,191)-(7,199),9,bf
LINE (95,163)-(170,183),13,bf
LINE (265,163)-(365,183),12,bf
LINE (435,163)-(535,183),13,bf
LINE (90,160)-(165,180),2,bf
LINE (260,160)-(360,180),2,bf
LINE (430,160)-(530,180),2,bf
LINE (206,135)-(410,144),6,B
COLOR 1,2
LOCATE 18,27 : PRINT "Bitte Funktion anklicken "
LOCATE 22,14 : PRINT "Lesen ";
LOCATE 22,35 : PRINT "Schreiben";
LOCATE 22,58 : PRINT "Suchen";
COLOR 8,10
LOCATE 25,3 : PRINT "Notaus";
COLOR 1,2
mausabf1:
ON MENU GOSUB menue
ON MOUSE GOSUB maus1
MOUSE ON
MENU ON
GOTO mausabf1
menue:
pull=MENU(0)
punkt=MENU(1)
IF pull=5 THEN
IF punkt=1 THEN schreibmaschine
IF punkt=2 THEN briefkopf
END IF
RETURN
maus1:
test=MOUSE(0)
x=MOUSE(1)
y=MOUSE(2)
IF x>1 AND x<9 AND y>192 AND y<200 THEN aus
IF x>90 AND x<165 AND y>160 AND y<180 THEN lesen
IF x>265 AND x<360 AND y>160 AND y<180 THEN schreiben
IF x>430 AND x<530 AND y>160 AND y<180 THEN suchen
RETURN
lesen:
MENU OFF
A=1
IF sl<>1 THEN GOSUB anzahlsatz
CLOSE 1
OPEN "r",#1,"adressdatei.rel",195
FIELD #1,20 AS nname$,20 AS vorname$,30 AS strasse$,30 AS wohnort$,15 AS telefon$,80 AS info$
LOCATE 18,27 : PRINT " "
LINE (90,160)-(165,180),1,bf
COLOR 2,1
LOCATE 22,14 : PRINT "Lesen";
COLOR 1,2
GOSUB fenster1
mausabf2:
ON MOUSE GOSUB maus2
MOUSE ON
GOTO mausabf2
maus2:
COLOR 1,2
test=MOUSE(0)
x=MOUSE(1)
y=MOUSE(2)
IF x>25 AND x<40 AND y>10 AND y<15 THEN
A=A-1
IF A=0 THEN A=1
COLOR 1,2
LOCATE 18,40 : PRINT A;: PRINT " "
END IF
IF x>60 AND x<75 AND y>10 AND y<15 THEN
A=A+1
IF A>satz THEN
A=satz+1
COLOR 1,2
LOCATE 18,27 :PRINT "Adressnummer zu hoch";
GOTO mausabf2
END IF
COLOR 1,2
LOCATE 18,40 : PRINT A; :PRINT " "
END IF
IF x>42 AND x<57 AND y>15 AND y<25 THEN GOSUB aendern
IF x>25 AND x<40 AND y>25 AND y<30 THEN lesen1
IF x>60 AND x<75 AND y>25 AND y<30 THEN
CLOSE 1
WINDOW CLOSE 3
WINDOW 2
LINE (90,160)-(165,180),2,bf
GOSUB fuellen
COLOR 1,2
LOCATE 18,27 : PRINT "Bitte Funktion anklicken "
LOCATE 22,14 : PRINT "Lesen ";
GOTO mausabf1
END IF
RETURN
lesen1:
GET #1,A
gela=A
IF EOF(1)=-1 THEN mausabf2
COLOR 3,10
LOCATE 4,17 : PRINT nname$
LOCATE 6,17 : PRINT vorname$
LOCATE 8,17 : PRINT strasse$
LOCATE 10,17 : PRINT wohnort$
LOCATE 12,17 : PRINT telefon$
LOCATE 15,17 : PRINT info$
enname$=nname$
evorname$=vorname$
estrasse$=strasse$
ewohnort$=wohnort$
etelefon$=telefon$
einfo$=info$
COLOR 2,1
IF ae=0 THEN RETURN
GOTO mausabf2
schreiben:
MENU OFF
LINE (260,160)-(360,180),1,bf
COLOR 2,1
LOCATE 22,35 : PRINT "Schreiben";
COLOR 1,2
eingabe:
IF sl<>1 THEN GOSUB anzahlsatz
OPEN "r",#1,"adressdatei.rel",195
FIELD #1,20 AS nname$,20 AS vorname$,30 AS strasse$,30 AS wohnort$,15 AS telefon$,80 AS info$
eingabe1:
LOCATE 18,27 : PRINT " Adresse eingeben "
COLOR 1,10
LOCATE 4,17 : PRINT sp$
LOCATE 6,17 : PRINT sp$
LOCATE 8,17 : PRINT sp$
LOCATE 10,17 : PRINT sp$
LOCATE 12,17 : PRINT sp$
LOCATE 15,17 : PRINT sp$
LOCATE 4,17 : LINE INPUT ename$
IF ename$="e" THEN
LOCATE 4,17 : PRINT " "
CLOSE 1
LINE (260,160)-(360,180),2,bf
COLOR 1,2
LOCATE 18,27 : PRINT "Bitte Funktion anklicken "
LOCATE 22,35 : PRINT "Schreiben";
GOTO mausabf1
END IF
LOCATE 6,17 : LINE INPUT evorname$
LOCATE 8,17 : LINE INPUT estrasse$
LOCATE 10,17 : LINE INPUT ewohnort$
LOCATE 12,17 : LINE INPUT etelefon$
LOCATE 15,17 : LINE INPUT einfo$
COLOR 1,2
LOCATE 18,27 : PRINT " Eingabe korrekt (j/n) "
schleife:
tast$=INKEY$ : IF tast$<>"j" AND tast$<>"n" THEN schleife
IF tast$="j" THEN
LSET nname$=ename$
LSET vorname$=evorname$
LSET strasse$=estrasse$
LSET wohnort$=ewohnort$
LSET telefon$=etelefon$
LSET info$=einfo$
satz=satz+1
PUT #1,satz
ta$=INKEY$
GOTO schleife1
END IF
IF tast$="n" THEN
LOCATE 18,27 : PRINT " Adresse eingeben "
GOTO eingabe1
END IF
schleife1:
LOCATE 18,27 : PRINT " weitere Eingaben (j/n) "
tast$=INKEY$ : IF tast$<>"j" AND tast$<>"n" THEN schleife1
IF tast$="j" THEN
LOCATE 18,27 : PRINT " Adresse eingeben "
GOTO eingabe1
END IF
IF tast$="n" THEN
CLOSE 1
GOSUB anzahlsatzsp
LINE (260,160)-(360,180),2,bf
COLOR 1,2
LOCATE 18,27 : PRINT "Bitte Funktion anklicken "
LOCATE 22,35 : PRINT "Schreiben";
GOTO mausabf1
END IF
suchen:
MENU OFF
OPEN "r",#1,"adressdatei.rel",195
FIELD #1,20 AS nname$,20 AS vorname$,30 AS strasse$,30 AS wohnort$,15 AS telefon$,80 AS info$
LINE (430,160)-(530,180),1,bf
COLOR 2,1
LOCATE 22,58: PRINT " Suchen";
COLOR 1,2
FOR x=0 TO 199
gef(x)=0
NEXT x
x=0
suchen0:
COLOR 1,10
LOCATE 4,17 : PRINT sp$
LOCATE 6,17 : PRINT sp$
LOCATE 8,17 : PRINT sp$
LOCATE 10,17 : PRINT sp$
LOCATE 12,17 : PRINT sp$
LOCATE 15,17 : PRINT sp$
COLOR 1,2
LOCATE 18,27 : PRINT "Bitte Suchwert eingeben "
suchene:
zeile=2
FOR la=0 TO 5
zeile=zeile+2
IF zeile=14 THEN zeile=15
LOCATE zeile,17 : LINE INPUT eingabe$
IF eingabe$="" THEN
COLOR 10,10
LOCATE CSRLIN-1,17 : PRINT " "
CLOSE 1
LINE (430,160)-(530,180),2,bf
COLOR 1,2
LOCATE 18,27 : PRINT "Bitte Funktion anklicken "
LOCATE 22,58 : PRINT "Suchen";
GOTO mausabf1
END IF
IF eingabe$<>"" THEN suchen2
NEXT la
COLOR 1,2
GOTO suchene
suchen2:
ss=1
IF sl<>1 THEN GOSUB anzahlsatz
suchen3:
IF la=0 THEN
GET #1,ss
wert=INSTR(nname$,eingabe$)
IF wert>0 THEN
gef(x)=ss
x=x+1
GOTO suchen4
END IF
END IF
IF la=1 THEN
GET #1,ss
wert=INSTR(vorname$,eingabe$)
IF wert>0 THEN
gef(x)=ss
x=x+1
GOTO suchen4
END IF
END IF
IF la=2 THEN
GET #1,ss
wert=INSTR(strasse$,eingabe$)
IF wert>0 THEN
gef(x)=ss
x=x+1
GOTO suchen4
END IF
END IF
IF la=3 THEN
GET #1,ss
wert=INSTR(wohnort$,eingabe$)
IF wert>0 THEN
gef(x)=ss
x=x+1
GOTO suchen4
END IF
END IF
IF la=4 THEN
GET #1,ss
wert=INSTR(telefon$,eingabe$)
IF wert>0 THEN
gef(x)=ss
x=x+1
GOTO suchen4
END IF
END IF
IF la=5 THEN
GET #1,ss
wert=INSTR(info$,eingabe$)
IF wert>0 THEN
gef(x)=ss
x=x+1
GOTO suchen4
END IF
END IF
suchen4:
ss=ss+1
IF ss>satz THEN suchen5
GOTO suchen3
suchen5:
IF gef(0)=0 THEN
CLOSE 1
COLOR 1,2
LOCATE 18,27 : PRINT "Keine passende Adresse "
GOTO suchen
END IF
suchen6:
COLOR 1,2
LOCATE 18,27 : PRINT x" Adressen gefunden "
z=x-1
x=0
suchen7:
tast$=INKEY$ : IF tast$<>CHR$(28) AND tast$<>CHR$(27) AND tast$<>CHR$(29) AND tast$<>CHR$(136) AND tast$<>CHR$(137) THEN suchen7
IF tast$=CHR$(29) THEN x=x+1 : GOTO suchen8
IF tast$=CHR$(28) THEN x=x-1 : GOTO suchen8
IF tast$=CHR$(27) THEN CLOSE 1 :GOTO suchen
IF tast$=CHR$(136) THEN
LINE (430,160)-(530,180),2,bf
COLOR 1,2
LOCATE 18,27 : PRINT "Bitte Funktion anklicken "
LOCATE 22,58 : PRINT "Suchen";
CLOSE 1
GOTO mausabf1
END IF
IF tast$=CHR$(137) THEN
LPRINT nname$ : LPRINT vorname$
LPRINT wohnort$ : LPRINT strasse$
LPRINT telefon$
GOTO suchen7
END IF
suchen8:
IF x>z THEN x=x-1
IF x<0 THEN x=x+1
COLOR 1,2
LOCATE 18,27 : PRINT "Adresse " gef(x) " "
GET #1,gef(x)
COLOR 4,10
LOCATE 4,17 : PRINT nname$
LOCATE 6,17 : PRINT vorname$
LOCATE 8,17 : PRINT strasse$
LOCATE 10,17 : PRINT wohnort$
LOCATE 12,17 : PRINT telefon$
LOCATE 15,17 : PRINT info$
GOTO suchen7
aendern:
LOCATE 18,27 : PRINT "Wollen Sie etwas ändern "
aendern0:
tast$=INKEY$ : IF tast$<>"j" AND tast$<>"n" THEN aendern0
IF tast$="j" THEN
IF gela<>A THEN
ae=0
GOSUB lesen1
ae=1
GOTO aendern1
END IF
END IF
IF tast$="n" THEN : LOCATE 18,27 :PRINT "Adressnummer "A" ":RETURN
aendern1:
WINDOW CLOSE 3
GOSUB fuellen
WINDOW 2
COLOR 1,2
LOCATE 18,27 : PRINT "Änderung "
LOCATE 4,17 : LINE INPUT enname1$
IF enname1$<>"" THEN enname$=enname1$
LOCATE 6,17 : LINE INPUT evorname1$
IF evorname1$<>"" THEN evorname$=evorname1$
LOCATE 8,17 : LINE INPUT estrasse1$
IF estrasse1$<>"" THEN estrasse$=estrasse1$
LOCATE 10,17 : LINE INPUT ewohnort1$
IF ewohnort1$<>"" THEN ewohnort$=ewohnort1$
LOCATE 12,17 : LINE INPUT etelefon1$
IF etelefon1$<>"" THEN etelefon$=etelefon1$
LOCATE 15,17 : LINE INPUT einfo1$
IF einfo1$<>"" THEN einfo$=einfo1$
COLOR 1,2
LOCATE 18,27 : PRINT " Eingabe korrekt "
schleife2:
tast$=INKEY$ : IF tast$<>"j" AND tast$<>"n" THEN schleife2